[IA64] support XEN_DOMCTL_mem_sharing_op
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 8 Jan 2010 11:37:44 +0000 (11:37 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 8 Jan 2010 11:37:44 +0000 (11:37 +0000)
Because memory sharing is not implemented on ia64, only
XEN_DOMCTL_MEM_SHARING_OP_CONTROL is supported.

Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
xen/arch/ia64/xen/dom0_ops.c

index 5c521c96cb35ebb5c72a8f5f340aa2e5b733691a..7a5e4ef20d9e06feee04e2b57fe4a4f8fbae9a61 100644 (file)
@@ -683,6 +683,35 @@ long arch_do_domctl(xen_domctl_t *op, XEN_GUEST_HANDLE(xen_domctl_t) u_domctl)
     }
     break;
 
+    case XEN_DOMCTL_mem_sharing_op:
+    {
+        xen_domctl_mem_sharing_op_t *mec = &op->u.mem_sharing_op;
+        struct domain *d = rcu_lock_domain_by_id(op->domain);
+
+        ret = -ESRCH;
+        if (d == NULL)
+            break;
+
+        switch(mec->op)
+        {
+            case XEN_DOMCTL_MEM_SHARING_OP_CONTROL:
+            {
+                if (mec->u.enable) {
+                    ret = -EINVAL; /* not implemented */
+                    break;
+                }
+                ret = 0;
+            }
+            break;
+
+            default:
+                ret = -ENOSYS;
+        }
+        
+        rcu_unlock_domain(d);
+    }
+    break;
+
     default:
         printk("arch_do_domctl: unrecognized domctl: %d!!!\n",op->cmd);
         ret = -ENOSYS;